#include "learn_rule.h"
#include <QIcon>
#include "mypushbutton.h"
#include <QTimer>
#include "mainscene.h"
#include <QDebug>
#include <QSoundEffect>
#include <QtMultimedia/QtMultimedia>
#include <QtMultimediaWidgets/QVideoWidget>
#include <QPainter>

learn_rule::learn_rule(QWidget *parent) : QWidget(parent)
{
    //设置固定大小
    setFixedSize(1200,300);
    //设置窗口图片
    setWindowIcon(QIcon(":/firstsence.jpg"));
    //设置标题
    setWindowTitle("规则介绍");

//    //播放音频
//    //QMediaPlayer * player = new QMediaPlayer;
//    //QVideoWidget * videowidget = new QVideoWidget(this);
//    player = new QMediaPlayer(this);
//    videowidget = new QVideoWidget(this);
//    videowidget->resize(550,700);
//    player->setVideoOutput(videowidget);
//    player->setMedia(QUrl::fromLocalFile(":/rule_learn.mp4"));
//    player->play();

    //创建退出按钮
    QPushButton * btn1 = new QPushButton;
    btn1->setParent(this);
    btn1->setText("退出游戏");
    btn1->move(0,0);
    btn1->show();
    //点击按钮 实现退出游戏
    connect(btn1,&QPushButton::clicked,[=](){
        this->close();
    });

    //返回按钮
    MyPushButton * backBtn = new MyPushButton(":/BackButton.png",":/BackButtonSelected.png");
    backBtn->setParent(this);
    //移动到右下角
    backBtn->move(this->width() - backBtn->width(),
                  this->height() - backBtn->height());
    //点击返回
    connect(backBtn,&MyPushButton::clicked,[=](){
        //告诉游戏场景，我返回了，游戏场景监听返回按钮
        //延时返回
        QTimer::singleShot(100,this,[=](){
            emit this->chooseSceneBack();
        });
    });
}

void learn_rule::paintEvent(QPaintEvent *event)
{
    QPainter painter(this);
    QPen pen(Qt::black);
    pen.setWidth(3);
    pen.setStyle(Qt::DotLine);
    painter.setPen(pen);
    painter.drawText(QRect(50,100,1000,1000),"这是一款无聊的高中生自己一边下棋一边研究，"
                                             "所研发出的一款棋类游戏。"
                                             "规则具体如下："
                                             "每方共6子，在4×4的格子中一次移动一格且必须移动。"
                                             "形成主动二对一的局面后便可吃子，"
                                             "将对方棋子吃光（其实吃至一颗）即可获胜"
                                             "关键点在于如何理解主动2对1。"
                                             "意即只有在你先手将己方二子紧紧压住对方一子时才能形成吃子。"
                                             "而敌方主动将棋子跳上来不能吃子。"
                                             "此外，二对二、三对一的情况也无法形成吃子。");
}
